package com.snjx.admui.master.test;

import java.net.URL;
import java.util.ArrayList;
import java.util.List;

import com.snjx.admui.master.model.UrlModel;
import com.virjar.dungproxy.webmagic7.DungProxyDownloader;

import lombok.extern.log4j.Log4j;
import us.codecraft.webmagic.Page;
import us.codecraft.webmagic.Site;
import us.codecraft.webmagic.Spider;
import us.codecraft.webmagic.processor.PageProcessor;

/**
* @author zyl
* @date 2017年6月22日 
* @describe OnePlus5 爬虫
*/ 
@Log4j(topic="Spider")
@SuppressWarnings("unused")
public class OnePlusSpider implements PageProcessor{
	private List<String> urlList=new ArrayList<>();//url  list 
	private void urlList() {
		for (int i=0;i<urlList.size();i++) {
			
			urlList.add("http://rush.oneplus.cn/");
			
		}
		
	}
	private List<String[]> httpProxyList; //代理池
	//初始化 设置
	private Site site = Site.me()
			     .setRetryTimes(3)
			     .setTimeOut(30000)//在使用代理的情况下,这个需要设置,可以考虑调大线程数目
			     .setSleepTime(0)
			     .setCycleRetryTimes(3)//这个重试会换IP重试,是setRetryTimes的上一层的重试,不要怕三次重试解决一切问题。。
		         .setUseGzip(true)
			     .setCharset("utf-8")
			     //.addCookie(name, value)
			     .addHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")
				 .addHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.71 Safari/537.36")
				 	;
	@Override
	public Site getSite() {
		 return site;
	}

	@Override
	public void process(Page page) {
		String imgUrl=page.getHtml().xpath("/html/body/div[1]/div[3]/div[4]/div[1]/div/div[1]/div/img/@src").toString();
		log.info(imgUrl);
		System.out.println("\n"+imgUrl+"\n");
	}
	
   public static void main(String[] args) {
	   /*while(true){*/
		     Spider.
		     create(new OnePlusSpider())
		     .addUrl("http://rush.oneplus.cn/")
		     //.setDownloader(new DungProxyDownloader())
		     .thread(5)
		     .run();
	   //}
}
}
